<?php

include('config.php');
include('erep_api.php');
$erep = new erep_api($consumer_key, $consumer_secret);
try
{
    // Obtiene de la API información sobre el usuario y la almacena en una sesión
    $result = $erep->get_citizen_data($_GET['oauth_token'], $_GET['oauth_verifier']);    
    $_SESSION["id"] = strval($result->id);
    $_SESSION["nick"] = strval($result->name);
    $_SESSION["partido"] = strval($result->party->name);
    $_SESSION["idPartido"] = strval($result->party->id);
    $_SESSION["nacimiento"] =  strval($result->date-of-birth);
    $_SESSION["nivel"] = strval($result->level);
    $_SESSION["nacionalidad"] = strval($result->citizenship->country->name);
    $_SESSION["residencia"] = strval($result->residence->region->name);
    $_SESSION["idResidencia"] = strval($result->residence->region->id);
    $_SESSION["idNacionalidad"] = strval($result->citizenship->country->id);
    $_SESSION["login"] = true;

    ?>
        <h1>Sesión iniciada correctamente</h1>
        <p>Hola <?echo $_SESSION["nick"]?>, estos son los datos que hemos recopilado sobre tu ciudadano </p>
        <ul>
            <li>id:           <?echo $_SESSION["id"]?>   </li>
            <li>Nick:         <?echo $_SESSION["nick"]?>   </li>
            <li>Nivel:       <?echo $_SESSION["nivel"]?>   </li>
            <li>Partido:      <?echo $_SESSION["partido"]?>   </li>
            <li>Nacimiento:   <?echo $_SESSION["nacimiento"]?>   </li>
            <li>Nacionalidad: <?echo $_SESSION["nacionalidad"]?>   </li>
        </ul>
        <span><a href="index.php?start" >Continuar</a></span>
    <?
   
   
} catch (Exception $e) {

    // Si se ha producido un error en la identificación, se trata de identificar el origen del error para dar una respuesta más intuitva al usuario
    $explicar = false;


    echo '<h1>Error al inciar sesión</h1>';
    echo '<p>Ocurrió el siguiente error al iniciar sesión: '. $e->getMessage() .'</p>';
    if (strpos($e->getMessage(),'oauth error')){
            $explicar = true;
            $error_tipo = 'oauth';
    }
    else if (strpos($e->getMessage(),'Invalid xml')){
            $explicar = true;
            $error_tipo = 'invalid_xml';
    }
    if ($explicar){
        echo '<h3>¿Y en cristiano?</h3>';
        if ($error_tipo == 'oauth')
            echo '<p>Hay un error en la API de erepublik, solo toca esperar a que los admins la arreglen.</p>';
        else if ($error_tipo == 'invalid_xml')
            echo '<p>Has intentado acceder a la aplicación sin haber iniciado sesión. O bien has refrescado esta página tras haber iniciado sesión</p>';
    }

    echo '<p><a href="index.php">Volver al inicio</a></p>';
}
        ?>
